<?php

	require_once './model/LoginHandler.php';
	require_once './view/LoginView.php';	
	
	class LoginController {
		
		public function DoControll(LoginHandler $handler) {
			
			$message = "";		
			$view = new LoginView();

			//Är användaren inloggad?
			if ($handler->IsLoggedIn() == true) {
				
				//Har användaren klickat på logout-knappen?
				if ($view->TriedToLogOut()) {
					
					//Tar bort kakor.
					$view->unsetCookies();
					$handler->DoLogout();
					 
					return $view->DoLoginBox();			
				}					
			}
		
			//Är användaren inte inloggad?
			if ($handler->IsLoggedIn() == false) {
				
				//Har användaren klickat på login-knappen?
				if ($view->TriedToLogIn()) {
		
					//Stämmer uppgifterna?
					if ($handler->DoLogin($view->GetUserName(), $view->GetPassword()) == true ||
						//Om kakor är satt.
						$handler->DoLogin($view->GetCookieUser(), $view->GetCookiePass()) == true) {

						//Sätter kakor.
						if ($view->RememberMe() == true) {
							$view->SetCookies();
						}	
					}
					else {
						$message = $view->CantLogin();
					}
				
				}
			}
			
			//Är användaren nu inloggad?
			if ($handler->IsLoggedIn() == true) {
				return $message . $view->DoLogoutBox();
			}
			
			//Är använren inte inloggad?
			if ($handler->IsLoggedIn() == false) {
				return $message . $view->DoLoginBox();
			}
		}
	}
